<?php 
/**
 * 登陆和注册控制器
 * @author 妮妮 <962611024@qq.com>
 */
class MemberController extends Controller{
	//自己调用
	private $model;
	//构造函数的方法
	public function __init(){
		$this->model=K('User');
	}
    /**
     * 注册
     */
    public function register(){
    	if(IS_POST){
//  		先验证是否为空
//  		if(!$this->model->create()) $this->error($this->model->error);
    		//p(Q("post."));
    		//用户名
    		$username=Q('post.username');
			//获得数组字段
			$data=$this->model->getField('username',true);
			//检测用户名是否在数组中
			if(in_array($username, $data)){
				$this->error('用户名存在');
			}
		
			//判断验证码是否都一致
			if(strtoupper(Q('post.code'))!=session('code')){
				$this->error('验证码不一致','',0.5);
			}
			//判断无误执行添加
			if(!$this->model->regAdd()) $this->error($this->model->error);
			$this->success('注册成功',U('Member/login'),'0.5');
    	}
		
        $this->display(); 
    }
	/*
	 * 验证码
	 * */
	public function code(){
		$code=new Code();
		$code->show();
		
	}
	/*
	 * 退出
	 * */
	public function out(){
		session(NULL);
		$this->success('退出成功',U("Index/index"));
	}
	/*
	 * ajax用户名检测
	 * */
	public function ajaxCheckUser(){
		//如果不是ajax提交  不走下面
		if(!IS_AJAX) return;
		$user=Q('post.username');
		$data=$this->model->where("username='{$user}'")->find();
		//如果用户不存在
		if($data){
			$msg=array('status'=>false,'message'=>'用户存在');
		}else{
			$msg=array('status'=>true,'message'=>'验证通过');
		}
		$this->ajax($msg);
		
	}
	/*
	 * ajax检测验证码是否正确
	 * */
	public function ajaxCheckCode(){
		//如果不是ajax提交  不走下面
		if(!IS_AJAX) return;
		$code=Q('post.code','','strtoupper');
		//如果验证码不正确
		if($code !=session('code')){
			$msg=array('status'=>false,'message'=>'验证码正确');
		}else{
			$msg=array('status'=>true,'message'=>'验证通过');
		}
		$this->ajax($msg);
			
	}
	
	/*
	 * 登陆
	 * */ 
	public function login(){
		if(IS_POST){
			//提交过来的数据
			$username=Q('post.username');
			//查询数据库一天条数据
			$data=$this->model->where("username='{$username}'")->find();
			//判断用户不存在时
			if(!$data){
				$this->error('用户不存在');
			}
			//post提交过来的数据
			$password=Q('post.password','','md5');
			//判断密码与数据库是否一样
			if($password!=$data['password']){
				$this->error('密码错误');
			}
			//与session比对
			$_SESSION['uid']=$data['uid'];
			$_SESSION['username']=$data['username'];
			$_SESSION['password']=$data['password'];
			
			$this->success('登陆成功',__ROOT__,0.5);
		}
		
		
		
		$this->display();
	}
	 
	 
	 
	 
	 
	 
	 
	 
	 
 }
 
 
 
 
 
 
 
 
 
 
 





















 ?>